package com.wf.course.service;

import java.util.List;

import com.utils.page.PageBean;
import com.wf.course.model.log.LoginLogs;
import com.wf.course.model.user.Role;
import com.wf.course.model.user.User;
import com.wf.course.model.user.UserRoleRelation;


/**
 * 用户业务逻辑
 * @author lyinlong
 *
 */
public interface IUserService {

	/**
	 * 登录
	 * @param userName
	 * @param password
	 * @return
	 */
	User login(String userName , String password);

	/**
	 * 添加用户信息
	 * @param user
	 * @return
	 */
	Integer addUser(User user);
	
	/**
	 * 通过编号获取用户信息
	 * @param id
	 * @return
	 */
	User getById(Integer id);
	
	/**
	 * 修改密码
	 * @param id
	 * @param password
	 * @return
	 */
	Boolean updatePassword(Integer id , String password);
	
	
	
	////////////用户管理/////////////
	
	/**
	 * 根据pageBean中封装的查询条件查询
	 * @param pageBean
	 * @return
	 */
	public void indexInfo(PageBean<User> pageBean);
	/**
	 * 添加或修改
	 * @param 
	 */
	public void saveOrUpdateUser(User user,String[] roleID);
	/**
	 * 查询用户信息
	 * @param userId
	 */
	public User querUserByUserId(Integer id);
	/**
	 * 查询用户的角色信息
	 */
	public List<UserRoleRelation> initUserRole(Integer userID);
	/**
	 * 删除
	 * @param id
	 */
	public void deleteById(Integer id,Integer status);
	/**
	 * 角色
	 */
	public List<Role> initRole();
	/**
	 * 添加系统用户登录日志
	 */
	public void addSysUserLogs(LoginLogs log);
	/**
	 * 修改用户状态
	 * @param 
	 */
	public void updateUserStatus(Integer id,Integer status);
}
